Skip to content

[WIP] Electronic structure revamp#1400

Open
esoteric-ephemera wants to merge 8 commits intodevelopfrom
bs
Open

[WIP] Electronic structure revamp#1400
esoteric-ephemera wants to merge 8 commits intodevelopfrom
bs

Conversation

@esoteric-ephemera
Copy link
Collaborator

Path order determination

  • Path order now determined by generating the k-path on the fly, using user-input labels if specified
  • This is important because older tasks will often have a periodic image of the same high-symmetry point, and thus fail to identify a path if labels are regenerated on the fly
  • The path convention can be manually set, automatic determination is only used as a fallback

Some other important notes:

  • There are wild inconsistencies in the labels used for the k-paths (ex, \\Gamma, GAMMA, and Γ)
  • Latimer-Munro also uses arbitrary labels per their paper:

Because each k-path is generated on-the-fly, no hard-coded labels are assigned unlike the previous conventions.

Band structure task type

  • Added a SCF Line task type to handle (specifically) meta-GGA and hybrid band structure calculations
  • These functionals require a different, SCF procedure to generate band-structures
  • Previously, the task type of these calcs would have been identified as Static
  • emmet.core.vasp.calc_types.utils.task_type function has been updated to check for (i) zero-weighted k-points and (ii) either a meta-GGA or hybrid tag to set the SCF Line task type

@esoteric-ephemera esoteric-ephemera changed the title Electronic structure revamp [WIP] Electronic structure revamp Mar 19, 2026
@esoteric-ephemera
Copy link
Collaborator Author

@tsmathis this is still failing to ID a lot of the false negatives, let's wait to merge for a bit until I can suss out what's going on

@tsmathis
Copy link
Collaborator

sounds good, we'll merge at your discretion

@codecov-commenter
Copy link

codecov-commenter commented Mar 19, 2026

Codecov Report

❌ Patch coverage is 95.97315% with 6 lines in your changes missing coverage. Please review.
✅ Project coverage is 86.06%. Comparing base (210e706) to head (324b1c2).

Files with missing lines Patch % Lines
emmet-core/emmet/core/band_theory.py 94.44% 4 Missing ⚠️
...s/emmet/builders/materials/electronic_structure.py 50.00% 1 Missing ⚠️
emmet-core/emmet/core/vasp/calc_types/utils.py 66.66% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #1400      +/-   ##
===========================================
+ Coverage    85.99%   86.06%   +0.06%     
===========================================
  Files          243      243              
  Lines        19246    19373     +127     
===========================================
+ Hits         16551    16673     +122     
- Misses        2695     2700       +5     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@esoteric-ephemera
Copy link
Collaborator Author

Ok this version seems to be picking up all the labelled band structures, worth a try seeing how it works for the full collection

@tsmathis
Copy link
Collaborator

nice! I'll give it a try

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants